cmake_minimum_required(VERSION 3.29)
project(demo2)

add_executable(${PROJECT_NAME} main.cpp)


# 链接需要的库，比如Boost和OpenCV
target_link_libraries(${PROJECT_NAME}
        PRIVATE
        MainWindow  # 这是你在 gui 目录中定义的动态库
        Qt${QT_VERSION_MAJOR}::Core
        Qt${QT_VERSION_MAJOR}::Gui
        Qt${QT_VERSION_MAJOR}::Widgets
)

## 指定包含路径
#target_include_directories(${PROJECT_NAME}
#        PRIVATE
#        MainWindow  # 这是你在 gui 目录中定义的动态库
#)

##########################################################################
## 定义一个自定义命令，将 GUI 动态库和 SARibbonBar 的 DLL 拷贝到可执行文件目录
#add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD
#        COMMAND ${CMAKE_COMMAND} -E copy_if_different
#        $<TARGET_FILE:MainWindow>
#        COMMENT "Copying GUI and SARibbonBar DLLs to the executable directory."
#)

add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD
        COMMAND ${CMAKE_COMMAND} -E copy_if_different
        $<TARGET_FILE:MainWindow>  # 生成的动态库
        $<TARGET_FILE_DIR:${PROJECT_NAME}>  # 可执行文件所在的目录
        COMMENT "Copying MainWindow DLL to the executable directory."
)
